package main

import (
	"github.com/spf13/viper"

	"go_user_manager/pkg/adapters/agin"
	"go_user_manager/pkg/adapters/database"
	"go_user_manager/pkg/adapters/grpc"
	"go_user_manager/pkg/utils/observability/log"
	"go_user_manager/pkg/utils/observability/tracing"
)

type Config struct {
	Trace    tracing.Config      `yaml:"trace"`
	Gin      agin.Options        `yaml:"gin"`
	Grpc     grpc.Options        `yaml:"grpc"`
	Log      log.Config          `yaml:"log"`
	Database database.GormConfig `yaml:"database"`
	JWT      agin.JWT            `yaml:"jwt"`
}

func (cfg *Config) Hook(v *viper.Viper) {
}
